from enum import Enum


class InvoiceStatus(Enum):
    PAID = 1
    UNPAID = 2
    VOID = 3
    OVERDUE = 4


class ClientInvoiceStatus(Enum):
    PAID = 0
    UNPAID = 1
    VOID = 2


class ClientPaymentType(Enum):
    CASH = 0
    CREDIT = 1
    STRIPE = 2


class DayReset(Enum):
    PROMO_CREDIT_RESET = 1
    CANCELLATION_BALANCE_RESET = 1


INVOICE_STATUS_CHOICES = (
    (InvoiceStatus.PAID.value, 'paid'),
    (InvoiceStatus.UNPAID.value, 'unpaid'),
    (InvoiceStatus.VOID.value, 'void'),
    (InvoiceStatus.OVERDUE.value, 'overdue')
)


CLIENT_INVOICE_STATUS_CHOICES = (
    (ClientInvoiceStatus.PAID.value, 'paid'),
    (ClientInvoiceStatus.UNPAID.value, 'unpaid'),
    (ClientInvoiceStatus.VOID.value, 'void')
)


CLIENT_PAYMENT_TYPE_CHOICES = (
    (ClientPaymentType.CASH.value, 'cash'),
    (ClientPaymentType.CREDIT.value, 'credit'),
    (ClientPaymentType.STRIPE.value, 'stripe')
)
